/*! \file MCEIRService.h */
#ifndef __MCEIR_SERVICE_H__
#define __MCEIR_SERVICE_H__

#include "TcpServer.h"
#include "DriverManager.h"

#include "TService.h"
#include <string>
	
class MCEIRService : private TService {

public:
	/*! winservice constructor, arg is the commandline string. */
	MCEIRService ( const char * arg );
	boost::asio::io_service m_IOService;	
private:		
	TcpSessionPtr sessionFactory ( boost::asio::io_service & s, DriverManager * driverManager );
	
	std::string m_Name;
	const char * GetName ( );
	void  ServiceProc ();
	void Terminate();
};

#endif